@JsonProperty এবং @JsonIgnore এর ব্যবহার

Java Technologies - জ্যাকসন (Jackson) - Jackson এর Annotations
212

@JsonProperty এবং @JsonIgnore হলো Jackson লাইব্রেরির দুটি গুরুত্বপূর্ণ অ্যানোটেশন, যা Java-তে JSON ডেটার সাথে কাজ করার সময় ব্যবহৃত হয়। এগুলো মূলত JSON ডেটা সিরিয়ালাইজেশন (Serialization) এবং ডিসিরিয়ালাইজেশন (Deserialization) প্রক্রিয়াকে নিয়ন্ত্রণ করতে ব্যবহৃত হয়।


1. @JsonProperty

@JsonProperty ব্যবহার করা হয় একটি ফিল্ড বা মেথডের নাম পরিবর্তন করতে অথবা JSON ডেটাতে প্রদর্শনের জন্য কাস্টম নাম নির্ধারণ করতে।

উদাহরণ:

import com.fasterxml.jackson.annotation.JsonProperty;

public class User {
    @JsonProperty("user_id") // JSON-এ "id" ফিল্ডের নাম হবে "user_id"
    private int id;
    
    @JsonProperty("user_name") // JSON-এ "name" ফিল্ডের নাম হবে "user_name"
    private String name;

    // Getters এবং Setters
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

ইনপুট JSON:

{
  "user_id": 1,
  "user_name": "John Doe"
}

আউটপুট JSON:

{
  "user_id": 1,
  "user_name": "John Doe"
}

2. @JsonIgnore

@JsonIgnore ব্যবহার করা হয় একটি ফিল্ডকে JSON ডেটার অংশ হতে বাধা দিতে। এটি JSON সিরিয়ালাইজেশন এবং ডিসিরিয়ালাইজেশন উভয় ক্ষেত্রেই প্রযোজ্য।

উদাহরণ:

import com.fasterxml.jackson.annotation.JsonIgnore;

public class User {
    private int id;

    @JsonIgnore // JSON ডেটাতে এই ফিল্ডটি অন্তর্ভুক্ত হবে না
    private String password;

    private String name;

    // Getters এবং Setters
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

ইনপুট JSON:

{
  "id": 1,
  "name": "John Doe"
}

আউটপুট JSON:

{
  "id": 1,
  "name": "John Doe"
}

Note: এখানে password ফিল্ডটি JSON ডেটাতে অন্তর্ভুক্ত হবে না কারণ এটি @JsonIgnore দ্বারা এনোটেট করা হয়েছে।


সংক্ষেপে:

  • @JsonProperty: ফিল্ড বা মেথডের নাম কাস্টমাইজ করতে ব্যবহৃত হয়।
  • @JsonIgnore: একটি ফিল্ডকে JSON ডেটার বাইরে রাখতে ব্যবহৃত হয়।

এই দুটি অ্যানোটেশন ব্যবহার করে আপনার JSON ডেটার প্রক্রিয়াকরণ আরও সহজ এবং নিয়ন্ত্রণযোগ্য করা যায়।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...